package com.ruoyi.project.bas.product.service.impl;

import java.util.List;
import java.util.UUID;

import com.ruoyi.project.bas.product.domain.BasProduct;
import com.ruoyi.project.bas.product.mapper.BasProductMapper;
import com.ruoyi.project.bas.product.service.IBasProductService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.common.core.text.Convert;

/**
 * 物品资料Service业务层处理
 * 
 * @author ruoyi
 * @date 2023-04-04
 */
@Service
public class BasProductServiceImpl implements IBasProductService
{
    @Autowired
    private BasProductMapper basProductMapper;

    /**
     * 查询物品资料
     * 
     * @param productGuid 物品资料主键
     * @return 物品资料
     */
    @Override
    public BasProduct selectBasProductByProductGuid(String productGuid)
    {
        return basProductMapper.selectBasProductByProductGuid(productGuid);
    }

    /**
     * 查询物品资料列表
     * 
     * @param basProduct 物品资料
     * @return 物品资料
     */
    @Override
    public List<BasProduct> selectBasProductList(BasProduct basProduct)
    {
        return basProductMapper.selectBasProductList(basProduct);
    }
    public List<BasProduct> selectBasProductListAll(BasProduct basProduct)
    {
        return basProductMapper.selectBasProductListAll(basProduct);
    }
    /**
     * 新增物品资料
     * 
     * @param basProduct 物品资料
     * @return 结果
     */
    @Override
    public int insertBasProduct(BasProduct basProduct)
    {
        basProduct.setProductGuid(UUID.randomUUID().toString());
        return basProductMapper.insertBasProduct(basProduct);
    }

    /**
     * 修改物品资料
     * 
     * @param basProduct 物品资料
     * @return 结果
     */
    @Override
    public int updateBasProduct(BasProduct basProduct)
    {
        return basProductMapper.updateBasProduct(basProduct);
    }

    /**
     * 批量删除物品资料
     * 
     * @param productGuids 需要删除的物品资料主键
     * @return 结果
     */
    @Override
    public int deleteBasProductByProductGuids(String productGuids)
    {
        return basProductMapper.deleteBasProductByProductGuids(Convert.toStrArray(productGuids));
    }

    /**
     * 删除物品资料信息
     * 
     * @param productGuid 物品资料主键
     * @return 结果
     */
    @Override
    public int deleteBasProductByProductGuid(String productGuid)
    {
        return basProductMapper.deleteBasProductByProductGuid(productGuid);
    }
}
